package fr.umlv.m2.jee.spij.ldap.actors;

import javax.naming.NamingException;
import java.util.List;

/**
 * Provides methods to retrieve Actors into LDAP.
 *
 * @author lounes
 */
public interface IActorDAO {

    /**
     * method return object Actor corresponding login and password.
     *
     * @param login    the login.
     * @param password the password.
     *
     * @return an actor.
     *
     * @throws NamingException if a NamingException occured.
     */
    Actor getUserDetails(String login, String password)
            throws NamingException;

    /**
     * returns all student user in LDAP.
     *
     * @return a list of Actor.
     *
     * @throws NamingException if a NamingException occured.
     */
    List<Actor> getAllStudent() throws NamingException;

    /**
     * returns all teacher user in LDAP.
     *
     * @return a list of Actor.
     *
     * @throws NamingException if a NamingException occured.
     */
    List<Actor> getAllTeacher() throws NamingException;

}
